export interface Data {
  current: number
  optimizeCountSql: boolean
  orders: string[]
  pages: number
  records: Record[]
  searchCount: boolean
  size: number
  total: number
}

export interface Record {
  createTime?: string
  /**
   * 客户编号
   */
  customerId?: string
  id?: string
  /**
   * 应用名称
   */
  name?: string
  /**
   * 应用编号
   */
  number?: string
  /**
   * 在线服务Id
   */
  onlineId?: string
  updateTime?: string
  /**
   * 客户名
   */
  username?: string
}

export interface DetailInfo {
  /**
   * apiKey
   */
  apiKey: string
  /**
   * 在线服务
   */
  apiList: ApiList[]
  createTime: string
  /**
   * 客户编号
   */
  customerId: string
  id: string
  /**
   * 应用名称
   */
  name: string
  /**
   * 应用编号
   */
  number: string
  /**
   * 在线服务id
   */
  onlineId: string
  /**
   * secretKey
   */
  secretKey: string
  updateTime: string
  /**
   * 客户名
   */
  username: string
}

export interface ApiList {
  /**
   * 有效期结束
   */
  afterValidTime: string
  /**
   * 算法名称
   */
  algoName: string
  /**
   * 应用状态
   */
  appStatus: string
  /**
   * 授权时间
   */
  authTime: string
  /**
   * 有效期开始
   */
  beforeValidTime: string
  /**
   * 应用服务id，appServeID
   */
  id: string
  /**
   * 算法使用方式Id
   */
  operateMethodId: string
  /**
   * 算法情况
   */
  operateMethodStatus: string
  /**
   * 算法情况修改时间
   */
  operateMethodTime?: string
  qps: number
  /**
   * 总调用量
   */
  totalCallNum: number
  /**
   * 使用量
   */
  usedCallNum: number
  /**
   * 版本号
   */
  version: string
}

export interface AuthApiDetail {
  /**
   * 服务有效期（后）
   */
  afterValidTime?: string
  /**
   * 算法名称
   */
  algoName?: string
  /**
   * 可申请qps
   */
  availableQps?: number
  /**
   * 服务有效期（前）
   */
  beforeValidTime?: string
  /**
   * 应用服务id，AppServeId
   */
  id?: number
  /**
   * 在线服务ID
   */
  onlineId?: string
  /**
   * 算法版本使用方式 id
   */
  operateMethodId?: number
  /**
   * QPS
   */
  qps?: number
  /**
   * 允许调用总量（API）
   */
  totalCallNum?: number
  /**
   * 算法版本号名称
   */
  version?: string
}

/**
 * 授权记录
 *
 *
 *
 * OnlineServerVO
 */
export interface AuthRecord {
  /**
   * 变更项
   */
  changeItemList?: ChangeItemVO[] | null
  /**
   * 赋权时间
   */
  empowerTime?: null | string
  /**
   * id
   */
  id?: number | null
  /**
   * 发起人名字
   */
  initiator?: null | string
  /**
   * 身份(1：客户，2：管理员)
   */
  recordIdentity?: RecordIdentity
}

/**
 * ChangeItemVO
 */
export interface ChangeItemVO {
  /**
   * 变更名字
   */
  name?: null | string
  /**
   * 变更后的值
   */
  newValue?: null | string
  /**
   * 变更前的值
   */
  oldValue?: null | string
}

/**
 * 身份(1：客户，2：管理员)
 */
export enum RecordIdentity {
  Administrator = 'ADMINISTRATOR',
  Client = 'CLIENT'
}
